package com.spark.sql

import org.apache.spark.SparkConf
import org.apache.spark.rdd.RDD
import org.apache.spark.sql.{DataFrame, Dataset, Row, SparkSession}

/**
  *
  * @author Pop
  * @date 2022/7/20 22:48
  */
object Spark02_SparkSql_UDF {
  def main(args: Array[String]): Unit = {

    // 创建SparkSql的运行环境
    val sparkSql: SparkConf = new SparkConf().setMaster("local[*]").setAppName("sparkSql")
    val session: SparkSession = SparkSession.builder().config(sparkSql).getOrCreate()
    import session.implicits._
    // 执行逻辑操作
      val df: DataFrame = session.read.json("datas/user.json")
    df.createOrReplaceTempView("user")

    // 希望如果你希望往结果定义一个前缀，可以使用自定义函数
    session.udf.register("prefixName",(name:String)=>{
      "Name:"+name
    })

    session.sql("select age,prefixName(username) from user").show()

//      df.show
    // DataFrame =》 Sql
//    DataFrame2Sql(df,session)


  }

}
